package com.atguigu.eduservice.service;

import com.atguigu.eduservice.entity.EduCourse;
import com.atguigu.eduservice.entity.EduTeacher;
import com.atguigu.eduservice.entity.coursevo.CourseInfoForm;
import com.atguigu.eduservice.entity.coursevo.CoursePublishVo;
import com.atguigu.eduservice.entity.coursevo.FrontCourseInfoVo;
import com.atguigu.eduservice.entity.coursevo.FrontCourseVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Map;

/**
 * <p>
 * 课程 服务类
 * </p>
 *
 * @author testjava
 * @since 2020-04-13
 */
public interface EduCourseService extends IService<EduCourse> {

    //添加课程基本信息
    String addCourseInfo(CourseInfoForm courseInfoForm);

    //根据课程id查询课程信息
    CourseInfoForm getCourseInfo(String id);

    //修改课程信息
    void updateCourse(CourseInfoForm courseInfoForm);

    //根据课程id查询课程确认信息
    CoursePublishVo getPublishCourse(String id);

    //删除课程接口
    void deleteCourse(String courseId);

    //1 条件查询分页课程列表
    Map<String, Object> getCourseFrontList(Page<EduCourse> pageParam, FrontCourseVo frontCourseVo);

    //根据课程id查询课程基本信息，用于详情显示
    FrontCourseInfoVo getCourseBaseInfoFront(String courseId);
}
